// Copyright 2025 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

d8.file.execute('test/mjsunit/wasm/wasm-module-builder.js');

let builder = new WasmModuleBuilder();
let array_index = builder.addArray(kWasmI8);
builder.addFunction("allocate", makeSig([kWasmI32], [kWasmAnyRef]))
  .addBody([
    kExprLocalGet, 0,
    kGCPrefix, kExprArrayNewDefault, array_index,
  ]).exportFunc();
let instance = builder.instantiate();
assertTraps(kTrapArrayTooLarge, () => instance.exports.allocate(0x3FFF_FFF3));
